package com.siwei.mes.mapper.materials;

import com.siwei.mes.common.base.BaseMapper;
import com.siwei.mes.entity.materials.MaterialsSpecConfig;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 材料及规格配置(MaterialsSpecConfig)表数据库访问层
 *
 * @author linzi
 * @since 2024-05-18 23:33:00
 */
public interface MaterialsSpecConfigMapper extends BaseMapper<MaterialsSpecConfig> {
    /**
     * 获取所有
     *
     * @param entity
     * @return
     */
    List<MaterialsSpecConfig> getList(MaterialsSpecConfig entity);

    /**
     * 根据id获取
     *
     * @param id
     * @return
     */
    MaterialsSpecConfig loadById(@Param("id") Long id);

    /**
     * 根据材料类型查询所有材料名称
     *
     * @param materialsType
     * @return
     */
    List<MaterialsSpecConfig> selectByMaterialsType(@Param("materialsType") Integer materialsType);

    /**
     * 根据材料类型+材料名称+材料规格查询
     *
     * @param materialsType 材料类型
     * @param materialsName 材料名称
     * @param materialsSpec 材料规格
     * @return
     */
    MaterialsSpecConfig getSpecConfigInfo(@Param("materialsType") Integer materialsType, @Param("materialsName") String materialsName, @Param("materialsSpec") String materialsSpec);
}
